package cn.demoncat.util.pay.unionpay.entity;

import java.time.LocalDateTime;

import cn.demoncat.util.pay.unionpay.constant.UnionpayConstant;

/**
 * 银联结果：交易查询
 * 
 * @author 延晓磊
 *
 * @since 2020年3月27日
 */
public class UnionpayResultQuery extends UnionpayResult{

	/**
	 * 交易查询流水号（支付、撤销、退款的查询流水号）
	 */
	private String queryId;
	/**
	 * 交易订单号（支付、撤销、退款发起的单号）
	 */
	private String orderId;
	/**
	 * 交易时间（支付、撤销、退款发起的时间）
	 */
	private LocalDateTime txnTime;
	/**
	 * 交易响应码（respCode返回00表示查询成功，origRespCode返回00表示交易成功）
	 */
	private String origRespCode;
	/**
	 * 交易响应消息
	 */
	private String origRespMsg;
	/**
	 * 交易金额
	 */
	private Long txnAmt;
	/**
	 * 银行卡号
	 * 
	 * 场景：支付时，返回支付银行卡号；退款时，返回到账银行卡号（同于支付银行卡）
	 */
	private String accNo;
	

	public UnionpayResultQuery() {
		super();
	}

	public UnionpayResultQuery(String txnType, String respCode, String respMsg, String reqReserved) {
		super(txnType, respCode, respMsg, reqReserved);
	}

	/**
	 * 是否交易成功应答
	 * 
	 * @return origRespCode == '00'
	 * 
	 * @author 延晓磊
	 *
	 * @since 2020年3月27日
	 */
	public boolean isTxnSuccess() {
		return UnionpayConstant.RESP_CODE_SUCCESS.equals(origRespCode);
	}
	
	public String getQueryId() {
		return queryId;
	}

	public void setQueryId(String queryId) {
		this.queryId = queryId;
	}

	public String getAccNo() {
		return accNo;
	}

	public void setAccNo(String accNo) {
		this.accNo = accNo;
	}

	public String getOrderId() {
		return orderId;
	}

	public void setOrderId(String orderId) {
		this.orderId = orderId;
	}

	public Long getTxnAmt() {
		return txnAmt;
	}

	public void setTxnAmt(Long txnAmt) {
		this.txnAmt = txnAmt;
	}

	public LocalDateTime getTxnTime() {
		return txnTime;
	}

	public void setTxnTime(LocalDateTime txnTime) {
		this.txnTime = txnTime;
	}

	public String getOrigRespCode() {
		return origRespCode;
	}

	public void setOrigRespCode(String origRespCode) {
		this.origRespCode = origRespCode;
	}

	public String getOrigRespMsg() {
		return origRespMsg;
	}

	public void setOrigRespMsg(String origRespMsg) {
		this.origRespMsg = origRespMsg;
	}

}
